⭐ Assets/Scripts/
+-- PlayerController.cs
  +-- Variables: moveSpeed, health, fireRate
  +-- Update(): Input.GetAxis(), movement
📦   +-- Shoot(): Instantiate(bulletPrefab)
📦
+-- BulletController.cs
  +-- Update(): transform.Translate()
📦   +-- OnTriggerEnter2D(): hit detection
📦   +-- Destroy() when off screen
📦
+-- WaveSpawner.cs
    +-- Start(): StartCoroutine()
    +-- SpawnWaves(): yield return WaitForSeconds

⭐ Assets/Prefabs/
+-- Player.prefab, ship + PlayerController
+-- Bullet.prefab, sprite + BulletController
+-- Enemy.prefab, sprite + EnemyController